﻿using Abp.Application.Services.Dto;
using shenghua.Common.Dto;
using shenghua.Order.Orders.Dto;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace shenghua.Order.Orders
{
    public interface IAdminOrderManagerAppService
    {
        Task<OrderDto> Update(UpdateOrderDto input);
        Task SetShipped(OrderShippedDto input);
        Task<SearchResultDto<OrderDto>> Search(SearchOrderDto input);
        Task<OrderDto> Get(OrderNumberDto input);
        Task<RefundDto> AddRefund(AddRefundDto input);
        Task<RefundDto> UpdateRefund(UpdateRefundDto input);
        Task DeleteRefund(EntityDto input);
        Task<List<RefundDto>> GetOrderRefunds(OrderNumberDto input);
        Task<OrderShipWuliuDto> GetOrderWuliu(OrderNumberDto input);
        Task<List<OrderLogDto>> GetAllOrderLogs(OrderNumberDto input);

        Task ConfirmPayment(ConfirmPaymentDto input);
        Task Delete(OrderNumberDto input);
        Task SetFinish(OrderNumberDto input);
        Task SetShippedBatch(OrderShippedBatchDto input);
    }
}
